//package com.lry.sso.service.redis.service;
//
//import com.alibaba.fastjson.JSON;
//import lombok.Data;
//import redis.clients.jedis.Jedis;
//import redis.clients.jedis.JedisCluster;
//import redis.clients.jedis.JedisPool;
//
///**
// * 当框架不支持 spring redis data 组件时 使用
// */
//@Data
//public class RedisActuator{
//    /*
//  redis:
//  #单机地址，可以不用配置
//  host: 121.40.56.97
//  port: 6379
//  maxTotal: 20
//  maxIdle: 5
//  password: root
//#  cluster:
//#    maxTotal: 20
//#    maxIdle: 5
//#    #资源耗尽时，是否要等待
//#    blockWhenExhausted: false
//#    #资源耗尽时，最大等待时间，默认 -1单位毫秒
//#    maxWaitMillis: 60000
//#    #最大尝试次数
//#    maxAttempts: 3
//#    #读取数据超时时间
//#    soTimeout: 10000
//#    password: Redis@123
//#    nodes: 10.1.12.169:7000,10.1.12.169:7001,10.1.12.170:7000,10.1.12.170:7001,10.1.12.171:7000,10.1.12.171:7001
//#    nodes: 10.1.12.161:7000,10.1.12.161:7001,10.1.12.161:7000,10.1.12.161:7001,10.1.12.161:7000,10.1.12.161:7001
//
//     */
//
//    private JedisPool jedisPool;
//
//    private JedisCluster jedisCluster;
//
//    public void set(String key,String value){
//        if (jedisCluster != null) {
//            jedisCluster.set(key,value);
//        }else{
//            try (Jedis jedis = jedisPool.getResource()) {
//                jedis.set(key,value);
//            }
//        }
//    }
//
//
//    public void setex(String key, String value, int expireTime) {
//        if (jedisCluster != null) {
//            jedisCluster.setex(key,expireTime,value);
//        }else{
//            try (Jedis jedis = jedisPool.getResource()) {
//                jedis.setex(key,expireTime,value);
//            }
//        }
//    }
//
//
//    public <T> void setObject(String key, T object, int expireTime) {
//        if (jedisCluster != null) {
//            jedisCluster.setex(key,expireTime, JSON.toJSONString(object));
//        }else{
//            try (Jedis jedis = jedisPool.getResource()) {
//                jedis.setex(key,expireTime,JSON.toJSONString(object));
//            }
//        }
//    }
//
//
//    public String get(String key) {
//        String result = null;
//        if (jedisCluster != null) {
//            result = jedisCluster.get(key);
//        }else{
//            try (Jedis jedis = jedisPool.getResource()) {
//                result = jedis.get(key);
//            }
//        }
//        return result;
//    }
//
//
//    public boolean exists(String key) {
//        boolean result = false;
//        if (jedisCluster != null) {
//            result = jedisCluster.exists(key);
//        }else{
//            try (Jedis jedis = jedisPool.getResource()) {
//                result = jedis.exists(key);
//            }
//        }
//        return result;
//    }
//
//
//    public void delete(String key) {
//        if (jedisCluster != null) {
//            jedisCluster.del(key);
//        }else{
//            try (Jedis jedis = jedisPool.getResource()) {
//                jedis.del(key);
//            }
//        }
//    }
//
//
//    public void expire(String key, int seconds) {
//        if (jedisCluster != null) {
//            jedisCluster.expire(key,seconds);
//        }else{
//            try (Jedis jedis = jedisPool.getResource()) {
//                jedis.expire(key,seconds);
//            }
//        }
//    }
//
//
//    public void setrange(String key, String value) {
//        if (jedisCluster != null) {
//            jedisCluster.setrange(key,0,value);
//        }else{
//            try (Jedis jedis = jedisPool.getResource()) {
//                jedis.setrange(key,0,value);
//            }
//        }
//    }
//
//
//    public Long pttl(String key) {
//        Long result = null;
//        if (jedisCluster != null) {
//            result = jedisCluster.pttl(key);
//        }else{
//            try (Jedis jedis = jedisPool.getResource()) {
//               result =  jedis.pttl(key);
//            }
//        }
//        return result;
//    }
//
//}
